This document relates to data processing by digital computer in a visual modeling language environment, and more particularly to generating a pattern-based application in a visual modeling environment.
Application programs, sometimes referred to simply as applications, are programs that an end-user runs to accomplish certain tasks. Applications typically work in conjunction with one or more back-end systems, which store the data to be worked on (e.g., business objects and other business data), as well as logic for manipulating the data (e.g., transactions or other business logic). Examples of back-end systems include database systems, enterprise resource planning (ERP) systems, and customer relationship management (CRM) systems. A user interface (UI) is designed to work in concert with application programs, and facilitates interaction between humans and computers by inviting and responding to user input.
Traditional techniques for creating applications involved extensive programming using a specific and complex programming language, which could only be done by an expert of such programming language. New, visual modeling tools such as the Visual Composer tool by SAP AG of Walldorf Germany simplify the creation and management of applications by providing graphical patterns that can connected together to automatically generate code represented by the graphical patterns. However, even visual modeling tools make it difficult to manage, modify, and propagate modifications to applications that are created and run on multiple client systems.
The visual modeling tool enables a business expert to create applications in a modeling environment in a declarative, problem centric, code free way. Experience showed that for certain reasons this is best done in a clear defined and restricted application domain. However, the more restricted such a domain, the less abstract the modeling environment. An application domain is characterized by a set of requirements that are realized by the applications of the domain. Unfortunately, such a restricted environment will not persist for long, but will change according to new or modified requirements. Accordingly, what is needed is a model based development environment which can smoothly be aligned with new and changing requirements.